package com.ruoyi.lvlian.dto;

import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;

import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

@Data
@ToString
@ApiModel(value = "入库单", description = "入库单")
public class WarehouseInfoDto {
    private static final long serialVersionUID = 1L;

    /**
     * 入库单号-一次货运多次入库
     */

    @Excel(name = "uid")
    private String uid;


    @Excel(name = "入库单号-一次货运多次入库")
    private String inNum;

    @ApiModelProperty(value = "销售方出库单号")
    private String outNum;

    @ApiModelProperty(value = "发票号码")
    private String invoiceNum;

    @ApiModelProperty(value = "驾驶证号")
    private String licenseNo;

    @ApiModelProperty(value = "车牌号码")
    private String plateNo;


    @ApiModelProperty(value = "购买方")
    private String[] buyerNames;



    @ApiModelProperty(value = "购买方公司税号编码")
    private String[] buyerCompanyCodes;



    @ApiModelProperty(value = "销售方")
    private String[] sellerNames;

    @NotNull(message = "orgCodes不能为空") // 这是实际的验证注解
    private List<String> orgCodes;

    @ApiModelProperty(value = "销售方公司税号编码")
    private String[] sellerCompanyCodes;


    @ApiModelProperty(value = "驾驶证号")
    private String driverLicense;

    @ApiModelProperty(value = "司机姓名")
    private String driverName;

    /** 入库过磅日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "入库过磅日期 yyyy-MM-dd")
    private String inDate;


    @ApiModelProperty(value = "销售方出库日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelProperty("销售方出库日期")
    private String outDate;


    /** 供销合同编号 */
    @ApiModelProperty(value = "供销合同编号")
    private String contractNum;

    /** 入库货物名称 */
    @ApiModelProperty(value = "入库货物名称")
    private String goodsName;

    private String orgCode;

    @ApiModelProperty(value = "分类")
    private String category;

    private String companyCode;

    @ApiModelProperty(value = "购买方")
    private String buyerName;

    @ApiModelProperty(value = "销售方")// 同开票方
    private String sellerName;
    @ApiModelProperty(value = "销售过磅单号")
    private String sellerWeighNum;
    @ApiModelProperty(value = "购买过磅单号")
    private String buyerWeighNum;

    @ApiModelProperty(value = "企业自然人(身份证号码)查物流")
    private String code;

    @ApiModelProperty(value = "数据来源填 实时物流小程序  四流平台")
    private String dataSource;


    @ApiModelProperty(value = "跟单号")
    private String orderNum;


    @ApiModelProperty(value = " 销售物流是否有图")
    private Boolean outHaveImg;

    @ApiModelProperty(value = "采购物流是否有图")
    private Boolean inHaveImg;

    private String  startTime;
    private String  endTime;

    @ApiModelProperty(value = "创建日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelProperty("创建日期")
    private String createDate;
}